Complete or partial automation in factories, manufacturing facilities, and the like is possible through utilization of industrial control systems. A logic processor, such as a programmable logic controller (PLC) lies at the core of the industrial control system. PLCs can be programmed to operate manufacturing processes through logic programs and/or routines. These programs can be stored in memory and generally are executed by the PLC in a sequential manner, although instruction jumping, looping, and interrupt routines are also common. Industrial control systems typically include a plurality of input and output (I/O) modules communicatively coupled to the PLC through a backplane that interferes at a device level to switches, contactors, relays, solenoids and sensors, among other devices. Accordingly, such control systems are optimized to control and monitor industrial processes, machines, manufacturing equipment, industrial plants, and the like.
Human machine interfaces (HMIs) or simply user interfaces are important to the successful operation and maintenance of industrial automation devices including control systems and associated equipment and/or machinery. User interfaces provide the essential communication link between operators and automation devices. This link allows operators to, among other things, setup and control devices and receive feedback by monitoring device status and health during operation. Without such user interfaces, achieving high-level industrial automation would be difficult if not impossible.
When a user has a problem with their HMI system, the user generally contacts technical support staff associated with a software vendor, for example, through, for example, placing a telephone call. The technical support staff queries the user for information through a series of questions designed to assist the technical support staff in diagnosing the problem experience by the user. The user may need to create or generate a log file and send it to the technical support staff. If the problem cannot be diagnosed in such a manner, the technical support staff might attempt to simulate the problem at the support site by attempting to reproduce the HMI system operating conditions and potential faults. The user may assist in such a simulation process by running or executing various debugging utilities on the user HMI system. If the problem cannot be reproduced and/or solved, a software engineer or other service technician may be dispatched to the user site to diagnose and solve the problem in the field. In some situations, software that includes a patch or fix to a problem is installed on a removable medium and physically transported and installed on the machine. The various processes of diagnosing and repairing a problem can result in excessive downtime, loss of productivity, and considerable costs can be involved for the user and the technical support staff and/or software vendor.
To overcome the aforementioned deficiencies, there is a need to provide the software vendor a means to quickly and easily interact with the user HMI system environment for quick and accurate feedback of the operating conditions and machine faults. There is a also a need to provide the user a means to interact directly into the software vendor solution database for self-help or auto-help capability mitigating the necessity of seeking assistance from technical support staff.